/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package suministros.ejb30.business;

import java.util.List;
import javax.ejb.EJB;
import javax.ejb.Stateless;
import suministros.ejb30.DAO.SumiGestionMovimientoLocal;
import suministros.ejb30.TO.AlmacenTO;
import suministros.ejb30.TO.AnoTO;
import suministros.ejb30.TO.ComprobantePagoTO;
import suministros.ejb30.TO.DetalleIngresoTO;
import suministros.ejb30.TO.DetalleMovimientoTO;
import suministros.ejb30.TO.DetalleMovimientoTemporalTO;
import suministros.ejb30.TO.DetalleOrdenTO;
import suministros.ejb30.TO.DetallePedidoSuministroTO;
import suministros.ejb30.TO.DetalleTransferenciaTO;
import suministros.ejb30.TO.EmpresaTO;
import suministros.ejb30.TO.IngresoTO;
import suministros.ejb30.TO.MovimientoTO;
import suministros.ejb30.TO.OrdenTO;
import suministros.ejb30.TO.ParametrosConsultaTO;
import suministros.ejb30.TO.PedidoTO;
import suministros.ejb30.entity.DetalleMovimiento;
import suministros.ejb30.entity.Movimiento;
import suministros.ejb30.entity.Orden;
import suministros.ejb30.TO.SubAlmacenTO;
import suministros.ejb30.TO.TransferenciaTO;
import suministros.ejb30.entity.DetalleMovimientoTemporal;
import suministros.ejb30.entity.DetalleTransferencia;
import suministros.ejb30.entity.StockAlmacen;
import suministros.ejb30.entity.Transferencia;
import suministros.ejb30.helper.Utiles_Convertir;

/**
 *
 * @author CAROLINA
 */
@Stateless
public class SumiAdministracionNotasBean implements SumiAdministracionNotasLocal {
  @EJB
  SumiGestionMovimientoLocal registraMovimientoDAO;

  public String insertarNotaIngreso(String usuario, String mac,Movimiento mov, List<DetalleMovimiento> detalleMovimiento, int codigoTemporal, int tioper) throws Exception {
    return registraMovimientoDAO.insertarNotaIngreso(usuario, mac,mov, detalleMovimiento,codigoTemporal,tioper);
  }
  public OrdenTO obtenerDatosOrden(String codigo) throws Exception {
    return registraMovimientoDAO.getDatosOrden(codigo);
  }
   public List<DetalleOrdenTO> getDatosDetalleOrdenSumados(String codigo) throws Exception {
    return this.registraMovimientoDAO.getDatosDetalleOrdenSumados(codigo);

 }
    public List<DetalleOrdenTO> getDatosDetalleOrden(String codigo) throws Exception {
    return this.registraMovimientoDAO.getDatosDetalleOrden(codigo);
 }
    public List<AlmacenTO> getListaAlmacenes() throws Exception {
    return this.registraMovimientoDAO.getListaAlmacenes();
 }
    public List<SubAlmacenTO> getListaSubAlmacenes() throws Exception {
    return this.registraMovimientoDAO.getListaSubAlmacenes();
 }
    public List<DetalleIngresoTO> getDatosDetalleIngresoUbicacionSumados(String codigo) throws Exception {
    return this.registraMovimientoDAO.getDatosDetalleIngresoUbicacionSumados(codigo);

 }
     public MovimientoTO obtenerMovimiento(String codigo){
      return this.registraMovimientoDAO.obtenerMovimiento(codigo);
     }
     
   
    public PedidoTO getDatosPedido(String codigo) throws Exception {
    return registraMovimientoDAO.getDatosPedido(codigo);
  }

     public List<DetalleOrdenTO> getListaDetallePedidoSuministro(String cod_pedido,int tipo_admin, int tipo) throws Exception {
         return registraMovimientoDAO.getListaDetallePedidoSuministro(cod_pedido, tipo_admin,tipo);
    }
   
     public String insertarSalida(String usuario, String mac,Movimiento mov, List<DetalleMovimiento> listadetalleOr) throws Exception
    {
      return registraMovimientoDAO.insertarSalida(usuario, mac,mov, listadetalleOr);
    }
      public Movimiento obtenerIngreso(String codigo){
     return  registraMovimientoDAO.obtenerIngreso(codigo);
      }
       public List<DetalleIngresoTO> getDatosDetalleIngresoUbicacionSumados2(String codigo) throws Exception {
    return this.registraMovimientoDAO.getDatosDetalleIngresoUbicacionSumados2(codigo);

 }
   public String insertarTransferencia(String usuario, String mac, List<DetalleTransferencia> detalles,Transferencia tra) throws Exception {
    return registraMovimientoDAO.insertarTransferencia(usuario, mac,detalles, tra);
  }
 public TransferenciaTO getDatosTransferencia(String codigo,int tipo) throws Exception {
        return registraMovimientoDAO.getDatosTransferencia(codigo, tipo);
     }

 public List<DetalleTransferenciaTO> getDatosDetalleTransferencia(String codigo) throws Exception {
        return registraMovimientoDAO.getDatosDetalleTransferencia(codigo);
     }
 public String insertarSalidaTran(String usuario, String mac,Movimiento mov, List<DetalleTransferenciaTO> listadetalleOr) throws Exception
    {
      return registraMovimientoDAO.insertarSalidaTrans(usuario, mac,mov, listadetalleOr);
}
 public List<IngresoTO> getDatosMovimiento(String codigo, int tipo,  int opcion, java.lang.String proy,java.lang.String unid ,int tipoIn,java.lang.String empresa,String anio, int mes,int pag, int tamaño) throws Exception{
          return registraMovimientoDAO.getDatosMovimiento(codigo,tipo, opcion, proy, unid, tipoIn, empresa, anio,  mes, pag,  tamaño);
     }

  public int getDatosMovimientoTamaño(String codigo, int tipo,  int opcion, java.lang.String proy,java.lang.String unid ,int tipoIn,java.lang.String empresa,String anio, int mes) throws Exception{
          return registraMovimientoDAO.getDatosMovimientoTamaño(codigo, tipo, opcion, proy, unid, tipoIn, empresa, anio, mes);
     }

    public List<EmpresaTO> obtenerEmpresas() throws Exception {
        return registraMovimientoDAO.obtenerEmpresas();
   }
   public Boolean registrarStockAlmacen(String usuario, String mac,StockAlmacen stock, int estado) throws Exception{
     return registraMovimientoDAO.registrarStockAlmacen(usuario, mac, stock, estado);

   }
   public List<AnoTO> getParametrosKardex() throws Exception {
        return registraMovimientoDAO.getParametrosKardex();
   }
   public List<DetalleIngresoTO> getDatosBusquedaSensitivaIngreso(String empresa) throws Exception {
        return registraMovimientoDAO.getDatosBusquedaSensitivaIngreso(empresa);
   }
   public List<DetalleIngresoTO> getDatosBusquedaSensitivaIngresoInventario(String empresa) throws Exception {
        return registraMovimientoDAO.getDatosBusquedaSensitivaIngresoInventario(empresa);
   }
    public String insertarSalidaInventario(String usuario, String mac,Movimiento mov, List<DetalleMovimiento> detalleMovimiento,String inventario) throws Exception{
           return registraMovimientoDAO.insertarSalidaInventario(usuario, mac, mov, detalleMovimiento,inventario);
   }
    public String insertarNotaIngresoInventario(String usuario, String mac,Movimiento mov, List<DetalleMovimiento> detalleMovimiento,  String inventario) throws Exception{
        return registraMovimientoDAO.insertarNotaIngresoInventario(usuario, mac, mov, detalleMovimiento, inventario);
    }
    public List obtenerCodigos(int tipoConsulta) throws Exception{
         return registraMovimientoDAO.obtenerCodigos(tipoConsulta);
    }
    public List<DetalleMovimientoTO> listarMovimientosSuministros(ParametrosConsultaTO parametros) throws Exception {
        return registraMovimientoDAO.listarMovimientosSuministros(parametros);
    }

     public List<DetalleMovimientoTO> listarMovimientosProveedores(ParametrosConsultaTO parametros) throws Exception {
      return registraMovimientoDAO.listarMovimientosProveedores(parametros);

    }

    public List<DetalleMovimientoTO> listarMovimientosTotales(ParametrosConsultaTO parametros) throws Exception {
    return registraMovimientoDAO.listarMovimientosTotales(parametros);
    }

    public List<DetalleMovimientoTO> listarMovimientoCuentas(ParametrosConsultaTO parametros) throws Exception {
    return registraMovimientoDAO.listarMovimientoCuentas(parametros);
    }
    public boolean insertarNotaIngresoFicticio(List<DetalleMovimientoTemporal> detalleMovimiento) throws Exception
    { return registraMovimientoDAO.insertarNotaIngresoFicticio(detalleMovimiento);
    }
     public List<DetalleMovimientoTemporalTO> getListaMovimientoTemporal(String ubicacion, String empresa, String ruc) throws Exception {
       return registraMovimientoDAO.getListaMovimientoTemporal(ubicacion, empresa, ruc);
    }
     public String eliminarMovimiento(String movimiento) throws Exception
     { return registraMovimientoDAO.eliminarMovimiento(movimiento);

     }


    public List<DetalleTransferenciaTO> getDatosDetalleTransferenciaStock(String codigo) throws Exception {
         return registraMovimientoDAO.getDatosDetalleTransferenciaStock(codigo);
    }
    public String insertarIngresoCarga(Movimiento mov, DetalleMovimiento detalle, int tipo) throws Exception
  { return registraMovimientoDAO.insertarIngresoCarga(mov, detalle, tipo);

   }
    public MovimientoTO getMovimientoModificar(String codigo) throws Exception
    { return registraMovimientoDAO.getMovimientoModificar(codigo);
   }
    public java.util.List<suministros.ejb30.TO.DetalleMovimientoTO> getDetallesMovimientoModificar(String codigo) throws Exception{
       return registraMovimientoDAO.getDetallesMovimientoModificar(codigo);
   }
    public void modificarIngresoCarga(List<DetalleMovimiento> detalleMovimiento) throws Exception
  {
     registraMovimientoDAO.modificarIngresoCarga(detalleMovimiento);
   }

  public void eliminarIngresoCarga(List<DetalleMovimiento> detalleMovimiento) throws Exception
  {registraMovimientoDAO.eliminarIngresoCarga(detalleMovimiento);

  }
  public void ajustarIngresoCarga(List<DetalleMovimiento> detalleMovimiento) throws Exception
  {registraMovimientoDAO.ajustarIngresoCarga(detalleMovimiento);
}

   public void ajustarIngresoTodos(List<DetalleMovimiento> detalleMovimiento) throws Exception
  {
    registraMovimientoDAO.ajustarIngresoTodos(detalleMovimiento);

 }
    public void ajustarIngresoSuministro(String codigo, String ano, String mes) throws Exception
  {
      registraMovimientoDAO.ajustarIngresoSuministro(codigo, ano, mes);
  }
    public  java.util.List<suministros.ejb30.TO.DetalleMovimientoTO> getDetallesMovimientoAjustar(String anio, String mes) throws Exception{
    return registraMovimientoDAO.getDetallesMovimientoAjustar(anio, mes);
 }
    public  java.util.List<suministros.ejb30.TO.TipoTO> getConsultarTipoCambioComprobante( Integer orden) throws Exception{

     return registraMovimientoDAO.getConsultarTipoCambioComprobante(orden);

 }
    public List<ComprobantePagoTO> getDatosOrdenComprobante(String codigo) throws Exception
        {
              return registraMovimientoDAO.getDatosOrdenComprobante(codigo);
        }

      public void ajustarIngreso( String ano, String mes) throws Exception
  {
       registraMovimientoDAO.ajustarIngreso( ano, mes);
  }

}